package com.fr.lintcode;

import java.util.LinkedHashMap;
import java.util.Map;

/**
 * @author 付荣
 * @version 创建时间：2019年1月31日 上午11:45:46
 */
public class Q209 {
	/**
     * @param str: str: the given string
     * @return: char: the first unique character in a given string
     */
    public char firstUniqChar(String str) {
        Map<Character, Integer> map = new LinkedHashMap<>();
        for(char c : str.toCharArray()){
        	Integer count = map.get(c);
        	if(count == null){
        		count = 1;
        	}else{
        		count ++;
        	}
        	map.put(c, count);
        }
        for(Map.Entry<Character, Integer> entry : map.entrySet()){
        	if (entry.getValue() == 1){
        		return entry.getKey();
        	}
        }
        return ' ';
    }
}
